package com.xinchuang.service.targetSystem;

import com.alibaba.fastjson.JSONObject;
import com.xinchuang.common.Result;
import com.xinchuang.entity.targetSystem.object.CommonAdd;

import java.util.List;

/**
 * @ClassName CommonService
 * @Description: TODO(共有属性服务)
 * @Author zhangxuan
 * @Date 2021-03-30 18:07
 * @Verion V1.0
 */
public interface CommonService {

    /**
     * 新增共有属性
     */
    Result addCommon(CommonAdd commonAdd);
    /**
     * 删除共有属性
     */
    Result delCommon(String id);
    /**
     * 更新共有属性
     */
    Result updateCommon(CommonAdd commonAdd);
    /**
     * 初始化主共有属性
     */
    void initializeCommonMainData();
    /**
     * 初始化子共有属性
     */
    void initializeCommonSubData();
    /**
     * 查询共有属性列表分页
     */
    Result selectCommonList(Integer pageNum, Integer pageSize, String status);
    /**
     * 查询筛选
     */
    Result selectSignData(String status);

    void addCommonCountry(List<String> country);

    /**
     * 共有属性排序
     * @param id
     * @param sign
     * @return
     */
    Result getCommonSort(String id, int sign);

    /**
     * 设置类型显示半径
     * @return
     */
    Result addRadius(String id, Double radius);

    /**
     * 获取类型显示半径
     * @return
     */
    Result getRadius(String id);

    /**
     * 初始化类型绑定图片的问题
     */
    void initTypeSign();

    /**
     *@author zhangxuan
     *@Description TODO 查询行政区域
     *@Date 17:18 2022/6/13
     *@Param [country, level]
     *@return com.zkwc.targetmanage.common.Result
     **/
    Result getCountryList(String country, String level);

    /**
     * 获取region和中心点坐标
     * @param adcode
     * @param country
     * @return
     */
    Result getRegionAndCenter(String adcode, String country);

    /**
     * 初始化字体大小
     */
    void initFontData();

    /**
     * 更新字符
     * @param json
     * @return
     */
    Result updateFont(JSONObject json);

    /**
     * 获取字符
     * @param json
     * @return
     */
    Result getFont(JSONObject json);

}
